<map version="0.9.0">
<!-- To view this file, download free mind mapping software FreeMind from http://freemind.sourceforge.net -->
<node CREATED="1279766132816" ID="ID_1211822312" LINK="http://ubuntuforums.org/forumdisplay.php?f=39" MODIFIED="1281322112043" STYLE="fork" TEXT="Linux Development 2010" VGAP="19">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279945128118" FOLDED="true" ID="ID_923188841" MODIFIED="1281420835057" POSITION="right" TEXT="Introduction">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      I'd like to program in Linux, where should I start?
    </p>
    <p>
      It depends.
    </p>
    <p>
      This presentation is the long answer
    </p>
  </body>
</html></richcontent>
<node CREATED="1279847152269" ID="ID_1718389938" MODIFIED="1281420517880" STYLE="fork" TEXT="Introduce my self">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Raul Suarez
    </p>
    <p>
      Using Linux for about 6 years
    </p>
    <p>
      Programming for&#160;&#160;28 (Professionally just 24)
    </p>
    <p>
      
    </p>
    <p>
      twitter: @rarsamx
    </p>
    <p>
      email: rarsa@yahoo.com
    </p>
    <p>
      blog: http://rarsa.blogspot.com
    </p>
    <p>
      blog: http://www.kwlug.org/blog/48
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279847140097" ID="ID_853172529" MODIFIED="1281310722832" STYLE="fork" TEXT="Housekeeping">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      I welcome questions and comments during the presentation, but there are two kind of questions that I will defer for later.
    </p>
    <ul>
      <li>
        Questions or comments about things I'll talk later.
      </li>
      <li>
        Comments or questions about particular technologies I didn't include
      </li>
    </ul>
    <p>
      I will provide the full mind map with links and comments on my KWLUG blog.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1281311988530" ID="ID_1545664411" MODIFIED="1281311991065" TEXT="Agenda"/>
<node CREATED="1281062483609" ID="ID_1059126417" MODIFIED="1281062509810" TEXT="Census">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Who is new to development?
    </p>
    <p>
      Who is new to developing under Linux?
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1280373107516" HGAP="48" ID="ID_1636911295" MODIFIED="1281416818467" POSITION="right" TEXT="Programming Primer" VSHIFT="2">
<node CREATED="1279847352344" ID="ID_1424109145" MODIFIED="1280373162605" STYLE="fork" TEXT="What is programming">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Providing instructions to the computer to perform a particular task.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1281008380306" FOLDED="true" ID="ID_1980860602" MODIFIED="1281420837407" TEXT="Development Cycle">
<node CREATED="1281008496588" ID="ID_1727194546" MODIFIED="1281062319405" TEXT="Planning">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Deciding/Finding out what to program
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1281008496589" ID="ID_1808293017" MODIFIED="1281417314385" TEXT="Coding, testing and documenting">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Creating the actual end result of the development
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1281008496591" ID="ID_161140563" MODIFIED="1281062375701" TEXT="Deployment">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Installing it where it will be executed
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1281062368669" ID="ID_34195948" MODIFIED="1281062436220" TEXT="Maintenance">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Adding/Removing/Modifying functionality
    </p>
    <p>
      Ensuring compatibility with new libraries
    </p>
    <p>
      Ensuring currency with new environments
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1280275086970" FOLDED="true" ID="ID_1776061820" MODIFIED="1281420841116" TEXT="Programming paradigms">
<node CREATED="1280275097087" ID="ID_964655366" MODIFIED="1281417387319" TEXT="Procedural">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Provide step by step instructions on how to accomplish a task
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280275102818" ID="ID_1812272287" MODIFIED="1280376214287" TEXT="Declarative">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Say what we want to get, not how to get it. SQL, XPath, etc.
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1279766706578" FOLDED="true" ID="ID_134138775" MODIFIED="1281420856161" STYLE="fork" TEXT="Language types">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279766768232" HGAP="21" ID="ID_1990269894" MODIFIED="1281417071682" STYLE="fork" TEXT="Scripting languages" VSHIFT="3">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Interpreted at run time
    </p>
    <p>
      Faster turn around development
    </p>
    <p>
      High portability
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279766762569" ID="ID_1865047040" MODIFIED="1281417074045" STYLE="fork" TEXT="Shell Scripting">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Automates the execution of commands that would normally be interpreted by the command line
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279766776730" FOLDED="true" ID="ID_510007493" MODIFIED="1281400420747" STYLE="fork" TEXT="bash - Bourn Again shell">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      the most common shell (Command line)
    </p>
  </body>
</html></richcontent>
<node CREATED="1279768861461" ID="ID_176907307" LINK="http://steve-parker.org/sh/sh.shtml" MODIFIED="1279943706065" STYLE="fork" TEXT="Tutorials">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      There are many tutorials. Google &quot;Bash Tutorial&quot;.
    </p>
    <p>
      My favourite:&#160;Steve-parker.org/sh
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279768920425" ID="ID_1915133099" LINK="http://tldp.org/LDP/abs/html/index.html" MODIFIED="1280454381764" STYLE="fork" TEXT="Reference">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Bash reference accordion
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1279766780111" ID="ID_1060621870" LINK="http://www.google.com/search?hl=en&amp;q=c+shell+scripting" MODIFIED="1280454630231" STYLE="fork" TEXT="C-shell csh">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Scripting shell with C-like syntax
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279766786179" ID="ID_566403112" LINK="http://kornshell.com/" MODIFIED="1281062144286" STYLE="fork" TEXT="Korn shell ksh">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Superset of Bash
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1279766819266" ID="ID_557777100" LINK="http://www.perl.org/" MODIFIED="1280455694488" STYLE="fork" TEXT="Perl">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Originally developed for text manipulation
    </p>
    <p>
      Practical, not beautiful
    </p>
    <p>
      Lots of regular expressions
    </p>
    <p>
      Lots of 3rd party modules
    </p>
    <p>
      OO although almost no-one uses OO with Perl
    </p>
    <p>
      Has the concept of &quot;current&quot; variable
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279770358797" ID="ID_763012507" LINK="http://www.tcl.tk/" MODIFIED="1280457879363" STYLE="fork" TEXT="Tcl">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Truly general purpose language
    </p>
    <p>
      Easy to create GUIs
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279767415161" ID="ID_158700553" LINK="http://www.php.net/" MODIFIED="1281417456073" STYLE="fork" TEXT="PHP">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Hypertext preprocesor
    </p>
    <p>
      Especially suited for Web development
    </p>
    <p>
      In the same category of JSP and ASP
    </p>
    <p>
      Anything that's not code is output
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279766822946" ID="ID_450537654" LINK="http://www.python.org/" MODIFIED="1280457565812" STYLE="fork" TEXT="Python">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      General purpose OO
    </p>
    <p>
      Easy to learn: Elegance and clarity are
    </p>
    <p>
      Easy to read
    </p>
    <p>
      Relies on C library functions
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279766825313" ID="ID_1406425678" LINK="http://www.ruby-lang.org/en/" MODIFIED="1280457567350" STYLE="fork" TEXT="Ruby">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write.
    </p>
    <p>
      Mostly used for Ruby on Rails
    </p>
    <p>
      Everything is an object
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280454222005" ID="ID_1120545991" MODIFIED="1280454225511" TEXT="Many others"/>
</node>
<node CREATED="1279766846179" ID="ID_158769697" MODIFIED="1281417075662" STYLE="fork" TEXT="Intermediate language">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Compiled into an intermediate language which is interpreted at run time
    </p>
    <p>
      Good portability
    </p>
    <p>
      An interpreter (virtual machine) must exist to run them
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279766867426" ID="ID_1916328728" LINK="http://en.wikipedia.org/wiki/List_of_JVM_languages" MODIFIED="1281392816304" STYLE="fork" TEXT="Java: Java, Jyton, Scala, etc">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Java is a programming language and computing platform (Virtual machine)
    </p>
    <p>
      JVM - Runtime
    </p>
    <p>
      JDK - Development libraries
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279766871467" ID="ID_1017562680" LINK="http://www.mono-project.com/Main_Page" MODIFIED="1281317263528" STYLE="fork" TEXT="Mono: C#,VB.NET, etc">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      An open source, cross-platform, .NET development framework compatible with Microsoft.NET
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1281063548335" ID="ID_1577353995" MODIFIED="1281063549751" TEXT="..."/>
</node>
<node CREATED="1279767024328" ID="ID_1603574454" LINK="http://en.wikipedia.org/wiki/Compiled_language" MODIFIED="1281417475970" STYLE="fork" TEXT="Compiled languages">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Compiled directly into machine language
    </p>
    <p>
      Non portable: Must be recompiled for different OSs and hardware architectures.
    </p>
    <p>
      Faster than the other two types in general.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279767034937" ID="ID_1917354623" LINK="http://www.faqs.org/docs/learnc/" MODIFIED="1281315668687" STYLE="fork" TEXT="C">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Simple, powerful
    </p>
    <p>
      Gives you all the rope you need to hang yourself
    </p>
    <p>
      Ported to every platform
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279767042067" ID="ID_870603327" MODIFIED="1281315943294" STYLE="fork" TEXT="C++">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Object Oriented language based on C
    </p>
    <p>
      http://www.learncpp.com/
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279767046584" ID="ID_1771378623" MODIFIED="1281417536057" STYLE="fork" TEXT="Pascal">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Originally created to learn to program
    </p>
    <p>
      Nice and simple syntax
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1281316761131" ID="ID_214865965" LINK="http://live.gnome.org/Vala" MODIFIED="1281316963439" TEXT="Vala">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      General purpose
    </p>
    <p>
      C meta language
    </p>
    <p>
      C#-like syntax
    </p>
    <p>
      Easy to link or wrap C libraries
    </p>
    <p>
      Used in Gnome apps
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279767048836" ID="ID_322570002" LINK="http://en.wikipedia.org/wiki/Compiled_language" MODIFIED="1279943706064" STYLE="fork" TEXT="...">
<font NAME="SansSerif" SIZE="12"/>
</node>
</node>
<node CREATED="1281315340809" ID="ID_1628687601" MODIFIED="1281420852531" TEXT="Advice">
<node CREATED="1281322251635" ID="ID_640584836" MODIFIED="1281417088358" TEXT="Command line automation">
<node CREATED="1281322259195" ID="ID_745272307" MODIFIED="1281322262899" TEXT="Shell scripting"/>
</node>
<node CREATED="1281322268242" ID="ID_1362812894" MODIFIED="1281417088990" TEXT="Learning to program">
<node CREATED="1281322274066" ID="ID_615274762" MODIFIED="1281322287709" TEXT="Scripting languages (Python, Ruby)"/>
</node>
<node CREATED="1281322293472" ID="ID_754141616" MODIFIED="1281417089590" TEXT="High Productivity">
<node CREATED="1281322304990" ID="ID_264852551" MODIFIED="1281322310706" TEXT="Intermediate languages"/>
<node CREATED="1281322311392" ID="ID_1365379199" MODIFIED="1281322315049" TEXT="Scripting languages"/>
</node>
<node CREATED="1281322331845" ID="ID_83554946" MODIFIED="1281417090525" TEXT="High performance">
<node CREATED="1281322339032" ID="ID_899673135" MODIFIED="1281322344317" TEXT="Compiled"/>
</node>
<node CREATED="1281322346383" ID="ID_109152375" MODIFIED="1281417091349" TEXT="Low level">
<node CREATED="1281322353184" ID="ID_1230577491" MODIFIED="1281322354223" TEXT="C"/>
</node>
<node CREATED="1281322360830" ID="ID_1802543031" MODIFIED="1281417092198" TEXT="High Portability">
<node CREATED="1281322367087" ID="ID_1165507277" MODIFIED="1281322369047" TEXT="C"/>
<node CREATED="1281322369631" ID="ID_1250349194" MODIFIED="1281322373745" TEXT="Scripting"/>
<node CREATED="1281417094382" ID="ID_991036923" MODIFIED="1281417098813" TEXT="Intermediate languages"/>
</node>
</node>
</node>
</node>
<node CREATED="1280373043327" HGAP="43" ID="ID_1960928283" LINK="http://www.faqs.org/docs/ldev/" MODIFIED="1281417102289" POSITION="right" TEXT="Programming Ecosystem overview" VSHIFT="1">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      http://www.yolinux.com/TUTORIALS/LinuxTutorialSoftwareDevelopment.html
    </p>
    <p>
      http://www.faqs.org/docs/ldev/
    </p>
  </body>
</html></richcontent>
<node CREATED="1279769146181" FOLDED="true" ID="ID_813803970" MODIFIED="1281420861893" STYLE="fork" TEXT="Development targets">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279769161557" ID="ID_1475224386" MODIFIED="1280375910381" STYLE="fork" TEXT="Console">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Also know as command line, terminal, character mode
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279849983222" ID="ID_1440287458" MODIFIED="1279943706067" STYLE="fork" TEXT="no output">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Some programs require no output, they just do whatever they do.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279770336610" ID="ID_1462154414" MODIFIED="1279943706067" STYLE="fork" TEXT="echo output">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Other programs get information from the command line and send information to the command line.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279773062977" ID="ID_946915893" LINK="http://tldp.org/HOWTO/NCURSES-Programming-HOWTO/" MODIFIED="1280715777405" STYLE="fork" TEXT="nCurses">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      nCurses provides a framework to create nice looking UI (User Interface)s in text mode.
    </p>
    <p>
      sudo aptitude install libncurses5-dev
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279849956870" ID="ID_1157648029" LINK="http://www.linuxjournal.com/article/2807" MODIFIED="1280378337611" STYLE="fork" TEXT="dialog">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Dialog allows displaying simple but useful text mode windows that show and get information
    </p>
    <p>
      
    </p>
    <p>
      sudo aptitude install dialog
    </p>
    <p>
      
    </p>
    <p>
      Examples under
    </p>
    <p>
      /usr/share/doc/dialog/examples/
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1279769152840" FOLDED="true" ID="ID_88429560" LINK="http://en.wikipedia.org/wiki/Desktop_environment" MODIFIED="1281395999922" STYLE="fork" TEXT="Graphical Desktop Environment">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Graphical User Interface that allows the user to interact with programs graphically.
    </p>
    <p>
      If you are targeting a particular Desktop environment, it is better if you develop under that environment to get all the dependencies, but test under another, to ensure you know what those dependencies are.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279770345043" ID="ID_1668223742" MODIFIED="1280711830742" STYLE="fork" TEXT="zenity, kdialog, gdialog, xdialog, GTKDialog">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Simple dialogs, some of the utilities quite old
    </p>
    <p>
      GTK dialog&#160;&#160;allows using interfaces designed with glade but it hasn't been updated in years
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279771496049" ID="ID_902619468" LINK="http://www.gnome.org/" MODIFIED="1280375991961" STYLE="fork" TEXT="Gnome">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279771499453" ID="ID_1218911142" LINK="http://www.kde.org/" MODIFIED="1280376020228" STYLE="fork" TEXT="KDE">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1280374533194" ID="ID_707479129" LINK="http://www.xfce.org/" MODIFIED="1280374554807" TEXT="XFCE"/>
<node CREATED="1280374707011" ID="ID_1368958578" LINK="http://www.enlightenment.org/" MODIFIED="1280374716346" TEXT="Enlightenment"/>
<node CREATED="1280374717562" ID="ID_1950878339" LINK="http://en.wikipedia.org/wiki/Desktop_environment" MODIFIED="1280376087245" TEXT="Many others..."/>
</node>
<node CREATED="1279769157116" ID="ID_115007717" MODIFIED="1280376406704" STYLE="fork" TEXT="Web">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279942904439" ID="ID_1016832992" MODIFIED="1280376871939" STYLE="fork" TEXT="Static">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Presenting information to the reader with no interaction
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279942906981" ID="ID_1540322213" MODIFIED="1280376906918" STYLE="fork" TEXT="Dynamic Server side">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Interacts with the user but processing happens mostly on the server and requires full page refresh
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279942909401" ID="ID_101009531" MODIFIED="1280376959997" STYLE="fork" TEXT="Dynamic AJAX">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Interacts with the user with the User interaction functionality on the client side. Information can be transferred asynchronously.
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1279847400646" ID="ID_1083768785" MODIFIED="1280376546664" STYLE="fork" TEXT="Mobile OS">
<node CREATED="1279942329095" ID="ID_1408465829" LINK="http://developer.android.com/index.html" MODIFIED="1280376686949" STYLE="fork" TEXT="Android">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Google's mobile operating system
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279942334842" ID="ID_519569342" LINK="http://meego.com/" MODIFIED="1280376662411" STYLE="fork" TEXT="MeeGo">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Fusion of Mobilin (Intel) and Maemo (Nokia)
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279942724036" ID="ID_623323829" LINK="http://developer.palm.com/index.php?option=com_content&amp;view=article&amp;id=1833&amp;Itemid=321" MODIFIED="1280376725367" STYLE="fork" TEXT="WebOS">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Palm's Linux based mobile OS
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280376468051" ID="ID_211363656" LINK="http://www.limofoundation.org/" MODIFIED="1280376737603" TEXT="LiMO">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Independent foundation
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1279944837588" ID="ID_1211088087" MODIFIED="1281417596123" TEXT="Embedded systems">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Don't know much about embedded, but other people in the group do. Just ask around.
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1281057459684" FOLDED="true" ID="ID_825598230" MODIFIED="1281420863333" TEXT="Basic toolset">
<node CREATED="1281061974194" ID="ID_1328947387" MODIFIED="1281061977500" TEXT="Editor"/>
<node CREATED="1281057472329" ID="ID_839224472" MODIFIED="1281057474037" TEXT="GCC"/>
<node CREATED="1281057475209" ID="ID_1396416748" MODIFIED="1281057476953" TEXT="GDB"/>
<node CREATED="1281057477219" ID="ID_68281885" MODIFIED="1281057478954" TEXT="Make"/>
</node>
<node CREATED="1280682721935" ID="ID_980783381" MODIFIED="1281062124977" TEXT="Libraries">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Almost no one starts from Scratch in Linux. There are libraries for everything,
    </p>
    <p>
      Applications are usually small and stable as they rely on 3rd party libraries
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279770369613" FOLDED="true" ID="ID_136569534" LINK="http://programming.ccp14.ac.uk/guitool/atai/guitool/" MODIFIED="1281420864526" STYLE="fork" TEXT="Toolkits (GUI libraries)">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      A toolkit is a set of programming libraries that work together to simplify development.
    </p>
    <p>
      A toolkit provides a consistent architecture and API.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279770388607" ID="ID_230785983" LINK="http://www.gtk.org/" MODIFIED="1280625156206" STYLE="fork" TEXT="GTK">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Gimp Tool Kit, used by Gnome and several other desktop environments
    </p>
    <p>
      gtkmm are the bindings for C++
    </p>
    <p>
      
    </p>
    <p>
      http://library.gnome.org/devel/references
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279770402413" ID="ID_1927146361" LINK="http://qt.nokia.com/" MODIFIED="1280629766105" STYLE="fork" TEXT="QT">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Highly portable Toolkit used by KDE and other environments such as Symbian and Maemo/MeeGo, Windows Mobile
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1280374757425" ID="ID_1097349507" LINK="http://www.enlightenment.org/p.php?p=about&amp;l=en" MODIFIED="1280375316753" TEXT="EFL">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Enlightenment semi-toolkit
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280375097703" ID="ID_927313070" LINK="http://xfc.xfce.org/index.html" MODIFIED="1280375318042" TEXT="XFC">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      XFCE wrapper to the GTK
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279946474796" ID="ID_813062886" LINK="http://www.fltk.org/" MODIFIED="1280375337122" TEXT="FLTK">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Fast and Light toolkit
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279770494379" ID="ID_440882919" LINK="http://www.wxwidgets.org/" MODIFIED="1280549544475" STYLE="fork" TEXT="wxWidgets">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Cross platform: Uses Native Platform libraries
    </p>
    <p>
      http://docs.wxwidgets.org/stable/
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279770409796" ID="ID_13685023" LINK="http://www.tcl.tk/" MODIFIED="1280377036981" STYLE="fork" TEXT="[TCL]">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279771567284" ID="ID_1710509038" LINK="http://www.tkdocs.com/" MODIFIED="1279943706505" STYLE="fork" TEXT="TK">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Ugly
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279771570207" ID="ID_1285541882" LINK="http://tktable.sourceforge.net/tile/" MODIFIED="1280375433655" STYLE="fork" TEXT="Tile">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Less ugly
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279771573138" ID="ID_451206971" LINK="http://www.dr-baum.net/gnocl/" MODIFIED="1279943706505" STYLE="fork" TEXT="Gnocl">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      GTK
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
</node>
<node CREATED="1279775889256" ID="ID_276185835" LINK="http://www.wittysparks.com/2008/07/08/four-toolkits-for-java-to-develop-excellent-gui/" MODIFIED="1280377038346" STYLE="fork" TEXT="[Java]">
<node CREATED="1279776017817" ID="ID_577884831" LINK="http://java.sun.com/javase/6/docs/technotes/guides/swing/index.html" MODIFIED="1280377986110" STYLE="fork" TEXT="AWT/Swing">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Part of the Java Foundation Classes. Swing is built in top of AWT extending the functionality.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279776017812" ID="ID_771002023" LINK="http://pivot.apache.org/" MODIFIED="1280377330435" STYLE="fork" TEXT="Pivot">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      RIA (Rich Internet Application) toolkit
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279776017814" ID="ID_505405002" LINK="http://thinletweb.appspot.com/" MODIFIED="1280377387970" STYLE="fork" TEXT="Thinlet">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Toolkit for J2SE
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279776017819" ID="ID_400581270" LINK="http://www.eclipse.org/swt/" MODIFIED="1280377930577" STYLE="fork" TEXT="SWT">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Developed by IBM as part of the Eclipse platform. Simpler than Swing but more limited
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1280375661629" ID="ID_1001465790" LINK="http://programming.ccp14.ac.uk/guitool/atai/guitool/" MODIFIED="1280376100019" TEXT="Many others..."/>
<node CREATED="1281392829527" ID="ID_1244944832" MODIFIED="1281417815495" TEXT="Advice">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      If you care about integration into a particular desktop environment, then use that toolkit
    </p>
    <p>
      If you don't then use the toolkit you feel most comfortable with
    </p>
    <p>
      If you care about simplicity and portability more than looks TK/Tile
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1279769332234" FOLDED="true" ID="ID_1691960919" MODIFIED="1281420865973" STYLE="fork" TEXT="Development Frameworks">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      A set of libraries, interfaces, paradigms, utilities and architecture to simplify the development of complex systems.
    </p>
    <p>
      Frameworks provide a consistent way of doing things liberating the developer from the details of the platform.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279769351032" ID="ID_1685029716" MODIFIED="1280378008461" STYLE="fork" TEXT="[Ruby]">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279776347347" ID="ID_960333691" LINK="http://rubyonrails.org/" MODIFIED="1279943706049" STYLE="fork" TEXT="RubyOnRails"/>
<node CREATED="1279776389819" ID="ID_1356860599" LINK="http://accidentaltechnologist.com/ruby/10-alternative-ruby-web-frameworks/" MODIFIED="1279943706048" STYLE="fork" TEXT="Other..."/>
</node>
<node CREATED="1279769490798" FOLDED="true" ID="ID_1139771449" LINK="http://www.phpframeworks.com/" MODIFIED="1281397591990" STYLE="fork" TEXT="[PHP]">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279769490800" ID="ID_1511508009" MODIFIED="1279943706048" STYLE="fork" TEXT="Yii">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279769490805" ID="ID_803483460" MODIFIED="1279943706048" STYLE="fork" TEXT="Cake">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279769490806" ID="ID_377665645" MODIFIED="1279943706048" STYLE="fork" TEXT="Zoop">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279776591733" ID="ID_360357364" LINK="http://www.phpframeworks.com/" MODIFIED="1279943706048" STYLE="fork" TEXT="Others..."/>
</node>
<node CREATED="1279769611659" FOLDED="true" ID="ID_1256879494" MODIFIED="1281397595194" STYLE="fork" TEXT="[Perl]">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279769611662" ID="ID_1992398583" MODIFIED="1279943706048" STYLE="fork" TEXT="Maypole">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279769611663" ID="ID_1319800227" MODIFIED="1279943706044" STYLE="fork" TEXT="Catalyst">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279769611664" ID="ID_1047576562" MODIFIED="1279943706044" STYLE="fork" TEXT="Jifty">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279769611665" ID="ID_203008295" MODIFIED="1279943706044" STYLE="fork" TEXT="Gantry">
<font NAME="SansSerif" SIZE="12"/>
</node>
</node>
<node CREATED="1279769675401" FOLDED="true" ID="ID_986942721" MODIFIED="1280687152070" STYLE="fork" TEXT="[Python]">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279769675402" ID="ID_288526210" MODIFIED="1279943706043" STYLE="fork" TEXT="Django">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279769675405" ID="ID_1167970223" MODIFIED="1279943706043" STYLE="fork" TEXT="Pylons">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279769675406" ID="ID_34851988" MODIFIED="1279943706043" STYLE="fork" TEXT="TurboGears">
<font NAME="SansSerif" SIZE="12"/>
</node>
</node>
<node CREATED="1280687167611" ID="ID_789468462" LINK="http://www.openlaszlo.com/" MODIFIED="1280691165990" TEXT="OpenLaszlo">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Application framework for Rich internet applications.
    </p>
    <p>
      Solo or Server deployment
    </p>
    <p>
      Backend processing support
    </p>
    <p>
      DHTML or Flash front end
    </p>
    <p>
      Support for mobile applications
    </p>
    <p>
      Netbeans plugin
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1279771657047" FOLDED="true" ID="ID_850869992" LINK="http://www.linas.org/linux/db.html" MODIFIED="1281420867157" STYLE="fork" TEXT="Databases">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Databases are special applications that help developers store, organize and access the data in a simple and consistent way.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279771789279" FOLDED="true" ID="ID_843619569" MODIFIED="1281397866714" STYLE="fork" TEXT="RDBMS">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279771663936" ID="ID_730414563" MODIFIED="1279943706029" STYLE="fork" TEXT="MySQL">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279771668113" ID="ID_616740104" MODIFIED="1279943706029" STYLE="fork" TEXT="Postgress">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279943110214" ID="ID_1772905175" MODIFIED="1279943706028" STYLE="fork" TEXT="SQLite"/>
<node CREATED="1279943128532" ID="ID_194348904" MODIFIED="1279943706028" STYLE="fork" TEXT="SAP DB"/>
</node>
<node CREATED="1279771802150" FOLDED="true" ID="ID_1080220249" MODIFIED="1281397881795" STYLE="fork" TEXT="Non Relational">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Don't use the relational model
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279772302483" ID="ID_1930996663" LINK="http://www.linuxjournal.com/article/3294" MODIFIED="1279943706028" STYLE="fork" TEXT="No SQL">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279772318827" ID="ID_935054444" MODIFIED="1279943706028" STYLE="fork" TEXT="BerkleyDB">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279772387019" ID="ID_1314728584" MODIFIED="1279943706027" STYLE="fork" TEXT="CouchDB">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279772387022" ID="ID_1263088992" MODIFIED="1279943706027" STYLE="fork" TEXT="MongoDB">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279772387024" ID="ID_640735608" MODIFIED="1279943706027" STYLE="fork" TEXT="Cassandra">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279772387025" ID="ID_444049692" MODIFIED="1279943706026" STYLE="fork" TEXT="Valdemort">
<font NAME="SansSerif" SIZE="12"/>
</node>
</node>
<node CREATED="1279771810382" ID="ID_1088649526" MODIFIED="1281418244431" STYLE="fork" TEXT="Interfaces">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279771819245" ID="ID_865750762" MODIFIED="1279943706021" STYLE="fork" TEXT="ODBC">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279771822198" ID="ID_204647453" MODIFIED="1279943706021" STYLE="fork" TEXT="JDBC">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279771831877" ID="ID_755021006" MODIFIED="1279943706021" STYLE="fork" TEXT="API libraries">
<font NAME="SansSerif" SIZE="12"/>
</node>
</node>
</node>
<node CREATED="1280369049145" FOLDED="true" ID="ID_1709843756" LINK="http://en.wikipedia.org/wiki/Comparison_of_revision_control_software" MODIFIED="1281420870050" TEXT="Version Control Systems">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Help you keep track of changes in your code.
    </p>
    <p>
      Can help remember what you did to your code and when.
    </p>
    <p>
      Helps communicating and coordinating with other developers working on the same project.
    </p>
  </body>
</html></richcontent>
<node CREATED="1280369057196" ID="ID_920398741" LINK="http://www.nongnu.org/cvs/" MODIFIED="1281418705549" TEXT="CVS">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      The grandfather of Linux version control systems.
    </p>
    <p>
      Centralized model where all the changes go into a central repository.
    </p>
    <p>
      It used to be the most popular but now most projects are migrating to other Version Control Systems.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280369060331" ID="ID_792649481" LINK="http://subversion.apache.org/" MODIFIED="1281418796652" TEXT="Subversion">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Subversion was created to overcome the limitations of CVS.
    </p>
    <p>
      Centralized model where all the changes go into a central repository.
    </p>
    <p>
      It is currently aging and some projects are migrating to distributed Version Control Systems
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280369065826" ID="ID_378769808" LINK="http://git-scm.com/" MODIFIED="1281418910436" TEXT="Git">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Extremely fast distributed version control system.
    </p>
    <p>
      Each developer has a personal repository where they can manage their own code and only integrate with other people's repository when they feel comfortable with their code.
    </p>
    <p>
      Used by the Linux Kernel.
    </p>
    <p>
      Many projects are migrating from CVS or Subversion to Git.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280369354306" ID="ID_1378032945" MODIFIED="1280369358013" TEXT="Many others..."/>
</node>
<node CREATED="1279771625475" FOLDED="true" ID="ID_801112141" LINK="http://tuxarena.blogspot.com/2008/09/compiling-cc-code-in-ubuntu-and.html" MODIFIED="1281420871062" STYLE="fork" TEXT="Development Environments">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279768047364" ID="ID_810438663" MODIFIED="1281419380625" STYLE="fork" TEXT="Editors">
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279768066189" ID="ID_876323165" LINK="http://www.vim.org/" MODIFIED="1281419305163" STYLE="fork" TEXT="Vim">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Vim is a highly configurable text editor built to enable efficient text editing. It is an improved version of the vi editor distributed with most UNIX systems.
    </p>
    <p>
      Can be configured to have syntax highlighting, code completion and integration with compilers and debugers.
    </p>
    <p>
      I takes time to learn how to use it but once mastered it can be more productive than traditinal graphical IDEs.
    </p>
    <p>
      Lighter than Emacs.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279768073525" ID="ID_298025785" LINK="http://www.gnu.org/software/emacs/" MODIFIED="1281419325425" STYLE="fork" TEXT="Emacs">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Emacs is an extensible text editor.
    </p>
    <p>
      Can be configured to have syntax highlighting, code completion and integration with compilers and debugers.
    </p>
    <p>
      Mode files allow configuring it for particular development environments.
    </p>
    <p>
      I takes time to learn how to use it but once mastered it can be more productive than traditinal graphical IDEs.
    </p>
    <p>
      Some may say, more configurable than Vim.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279768109361" ID="ID_956656089" LINK="http://www.nedit.org/" MODIFIED="1281419285235" STYLE="fork" TEXT="NEdit">
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279768117870" ID="ID_387314375" LINK="http://www.jedit.org/" MODIFIED="1281419525883" STYLE="fork" TEXT="JEdit">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Java based editor, ported to many platforms where Java is available
    </p>
    <p>
      Plugins can be installed from within the editor.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279768180885" ID="ID_1764562769" MODIFIED="1281419427815" STYLE="fork" TEXT="Any Editor">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Kate, Gedi, Geany and many other editors offer syntax highlighting and different degrees of integration with compilers and debuggers.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
</node>
<node CREATED="1279768001649" ID="ID_1309493124" LINK="http://en.wikipedia.org/wiki/Comparison_of_integrated_development_environments" MODIFIED="1281419956583" STYLE="fork" TEXT="IDEs">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      IDE : Integrated Development Environment
    </p>
    <p>
      IDEs are programs that provide facilities to the programmer,hiding details of project setup and compilation.
    </p>
    <p>
      IDEs usually provide editors with syntax highlighting and code completion. Project management, Documentation generators, debuggers, compilers, etc. in a single package.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279768017367" ID="ID_447793178" LINK="http://www.anjuta.org/" MODIFIED="1281326807047" STYLE="fork" TEXT="Anjuta (GTK)">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Multilanguage IDE
    </p>
    <p>
      C, C++, Java, Python
    </p>
    <p>
      
    </p>
    <p>
      Requires wxWidgets
    </p>
    <p>
      
    </p>
    <p>
      Git integration (Enable Git Plugin)
    </p>
    <p>
      Integrated Glade for UI design (Although not well integrated with C++)
    </p>
    <p>
      Must manually associate UI and code
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279772975581" ID="ID_1981311225" LINK="http://www.kdevelop.org/" MODIFIED="1281327073421" STYLE="fork" TEXT="KDevelop (KDE)">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Unsupported in Lucid. Need to enable &quot;Unsupported updates&quot;
    </p>
    <p>
      Can target KDE, Gnome and others
    </p>
    <p>
      Used to be multilanguage on version 3.x for version 4 only C++ and PHP
    </p>
    <p>
      
    </p>
    <p>
      Requires installing cmake separately (Ubuntu)
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1280627132036" ID="ID_12892225" LINK="http://qt.nokia.com/products/developer-tools" MODIFIED="1280633173833" TEXT="QT Creator">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Created by Nokia, owners of QT
    </p>
    <p>
      Highly polished
    </p>
    <p>
      Only QT
    </p>
    <p>
      Only C++
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279773232845" ID="ID_1141269350" LINK="http://www.codeblocks.org/" MODIFIED="1280673748669" STYLE="fork" TEXT="Code::Blocks (wxWidgets)">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      C++ IDE
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279768008938" ID="ID_787543678" LINK="http://www.eclipse.org/" MODIFIED="1280768560084" STYLE="fork" TEXT="Eclipse">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Professional quality IDE
    </p>
    <p>
      Extensible
    </p>
    <p>
      Primarily Java but other language plugins available
    </p>
    <p>
      
    </p>
    <p>
      Android development environment
    </p>
    <p>
      Nice tutorials at http://www.vogella.de
    </p>
    <p>
      
    </p>
    <p>
      BlackBerry development environment
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279768019758" ID="ID_71076672" LINK="http://netbeans.org/" MODIFIED="1281419790091" STYLE="fork" TEXT="NetBeans (Java)">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Java based development environment
    </p>
    <p>
      Oracle (formerly Sun) sponsored.
    </p>
    <p>
      Plugins for several other languages and frameworks including PHP/Zend, RubyOnRails, C, C++.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1279768143994" FOLDED="true" ID="ID_1388554584" LINK="http://monodevelop.com/" MODIFIED="1281419548644" STYLE="fork" TEXT="MonoDevelop (.NET)">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Development environment for the Mono framework.
    </p>
    <p>
      Primarily C#
    </p>
    <p>
      Plug-ins for other languages
    </p>
    <p>
      
    </p>
    <p>
      For web development (ASP.NET) install xsp2
    </p>
    <p>
      sudo aptitude install mono-xsp2
    </p>
    <p>
      
    </p>
    <p>
      ASP.NET visual editor still under development
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
<node CREATED="1279774405953" ID="ID_583669962" LINK="http://www.mono-project.com/GtkSharp" MODIFIED="1279943706033" STYLE="fork" TEXT="GTKSharp"/>
<node CREATED="1279774408676" ID="ID_1276957746" LINK="http://techbase.kde.org/Development/Languages/Qyoto" MODIFIED="1279943706032" STYLE="fork" TEXT="Qyoto"/>
<node CREATED="1279774567061" ID="ID_629736903" LINK="http://wxnet.sourceforge.net/" MODIFIED="1279943706032" STYLE="fork" TEXT="wx.NET"/>
</node>
<node CREATED="1279769115339" ID="ID_687385145" LINK="http://lazarus.freepascal.org/" MODIFIED="1280675685583" STYLE="fork" TEXT="Lazarus (FreePascal)">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Just like the original Delphi
    </p>
    <p>
      Desktop applications
    </p>
    <p>
      Web Services toolkit for web services creation and consumption
    </p>
    <p>
      Extensions for CGI development
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
<node CREATED="1280625681753" ID="ID_175915412" LINK="http://www.valaide.org/" MODIFIED="1280625920002" TEXT="Val(a)IDE">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      IDE for the Vala language
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280709615755" ID="ID_347808029" LINK="http://appinventor.googlelabs.com/about/" MODIFIED="1280709706280" TEXT="Android App Inventor">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Program Android apps in a 100% graphical environment
    </p>
    <p>
      Currently requires invitation.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1279768025527" ID="ID_777087599" MODIFIED="1281419850988" STYLE="fork" TEXT="Proprietary">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Many vendors offer proprietary versions of their IDEs for Linux but with that many Free and Open Source environments, it is difficult to justify them.
    </p>
  </body>
</html></richcontent>
<font NAME="SansSerif" SIZE="12"/>
</node>
</node>
<node CREATED="1281228445598" ID="ID_979376827" MODIFIED="1281402243758" TEXT="Visual programming">
<node CREATED="1281228473908" ID="ID_648512258" LINK="http://groups.csail.mit.edu/uid/sikuli/" MODIFIED="1281305746893" TEXT="Sikuli">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Almost-typeless-environment to script GUI repetitive tasks.
    </p>
    <p>
      Java based, Jython engine underneath
    </p>
    <p>
      
    </p>
    <p>
      Not in repositories
    </p>
    <p>
      
    </p>
    <p>
      Requires
    </p>
    <ul>
      <li>
        python-opencv
      </li>
      <li>
        libcvaux
      </li>
      <li>
        libcxxtools6
      </li>
    </ul>
    <p>
      
    </p>
    <p>
      Context menus require capturing with another screen capture utility such as ksnapshot
    </p>
    <p>
      
    </p>
    <p>
      Exporting to executable generates a file that can be executed by passing it as a parameter
    </p>
    <p>
      
    </p>
    <p>
      Can create a shell script to execute without typing.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1281228491858" ID="ID_870816217" LINK="http://education.mit.edu/drupal/openblocks" MODIFIED="1281308626492" TEXT="Open Blocks">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Java library for creating blocks-based programming UIs.
    </p>
  </body>
</html></richcontent>
<node CREATED="1281228456335" ID="ID_492012951" LINK="http://appinventor.googlelabs.com/about/" MODIFIED="1281417749984" TEXT="Android - App Inventor">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      OpenBlocks based visual platform to develop Android applications
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1281228520774" ID="ID_1287850584" LINK="http://education.mit.edu/drupal/starlogo-tng" MODIFIED="1281308474184" TEXT="StarLogo TNG">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      http://education.mit.edu/drupal/starlogo-tng
    </p>
  </body>
</html></richcontent>
</node>
</node>
<node CREATED="1281228468176" ID="ID_490703054" LINK="http://scratch.mit.edu/" MODIFIED="1281306734403" TEXT="Scratch">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Scratch is a programming language that makes it easy to create your own interactive stories, animations, games, music, and art -- and share your creations on the web.
    </p>
  </body>
</html></richcontent>
</node>
</node>
</node>
<node CREATED="1280461196529" FOLDED="true" ID="ID_1124844070" MODIFIED="1281420873212" TEXT="Packaging">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      In Linux it is common to distribute the the applications as packages that the target operating system knows how to install.
    </p>
  </body>
</html></richcontent>
<node CREATED="1280461204670" ID="ID_578242792" MODIFIED="1281420032773" TEXT="deb">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      deb packages are meant for Debian based systems, such as Deian, Ubuntu and Mint
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280461207270" ID="ID_1364229005" MODIFIED="1281420070774" TEXT="rpm">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      rpm packages are meant for RedHat based systems such as RedHat, Fedora and Centos.
    </p>
  </body>
</html></richcontent>
</node>
<node CREATED="1280461214068" ID="ID_69157491" MODIFIED="1281420133909" TEXT="others ...">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      Different Linux distributions have their own package format. That's why vendors usually either target specific platforms or provide a generic tgz package.
    </p>
  </body>
</html></richcontent>
</node>
</node>
</node>
<node CREATED="1280369024955" ID="ID_1770001495" MODIFIED="1280373021654" POSITION="right" STYLE="fork" TEXT="Comparisons &amp; Demos"/>
<node CREATED="1280460862376" ID="ID_250533792" MODIFIED="1281420394042" POSITION="right" TEXT="Joining a FLOSS project">
<richcontent TYPE="NOTE"><html>
  <head>
    
  </head>
  <body>
    <p>
      To join a Free and Open Source project you &quot;usually&quot; need to do the following:
    </p>
    <ul>
      <li>
        Use the application you want to contribute to.
      </li>
      <li>
        Learn the code (even if it is just a portion you are interested on)
      </li>
      <li>
        Contribute with small changes until the people in the corresponding development community know you
      </li>
    </ul>
    <p>
      Eventually you will find your self contributing larger portions of code and seing your code and contributions used by many other people. It really feels good.
    </p>
    <p>
      
    </p>
    <p>
      I said &quot;usually&quot; because different projects have different cultures and practices. Some are dictatorial with a single person deciding what is included into the code. Some others are democratic where people discuss what goes in. And some are quite open, with people contributing through different channels in an apparently cahotic way.
    </p>
  </body>
</html></richcontent>
</node>
</node>
</map>
